package com.xd.center.api.bean.request;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.io.Serializable;
import java.math.BigDecimal;

@Data
@ApiModel(value = "评估")
@EqualsAndHashCode(callSuper=false)
public class EvaluateRq implements Serializable {

  private static final long serialVersionUID = -1;

  /**
   * 评估方式
   */
  @ApiModelProperty(value = "评估方式")
  private String em = "1"; //默认自动评估

  private String identity;

  private String dataType = "0";

  @ApiModelProperty(value = "小区ID")
  private Long communityId;

  @ApiModelProperty(value = "省ID")
  private Long provinceId;

  @ApiModelProperty(value = "省名称")
  private String province;

  @ApiModelProperty(value = "城市ID")
  private Long cityId;
  @ApiModelProperty(value = "城市编码")
  private String cityCode;
  @ApiModelProperty(value = "城市名称")
  private String city;

  @ApiModelProperty(value = "行政区ID")
  private Long districtId;
  @ApiModelProperty(value = "行政区编码")
  private String districtCode;
  @ApiModelProperty(value = "行政区")
  private String district;

  @ApiModelProperty(value = "名称")
  private String name;

  @ApiModelProperty(value = "地址")
  private String address;

  @ApiModelProperty(value = "楼层信息")
  private String floor;

  @ApiModelProperty(value = "总楼层")
  private String totalfloor;

  @ApiModelProperty(value = "面积")
  private Double square;

  @ApiModelProperty(value = "朝向")
  private String aspect;

  @ApiModelProperty(value = "评估日期")
  private String appraisaldate;

  @ApiModelProperty(value = "经度")
  private Double longitude;

  @ApiModelProperty(value = "纬度")
  private Double latitude;

  @ApiModelProperty(value = "景观")
  private String[] landscape;

  //private Boolean iflight; 是否挡光

  @ApiModelProperty(value = "户型结构")
  private String dwellingStructure;

  @ApiModelProperty(value = "装修情况（毛坯，简装， 精装， 豪装）")
  private String fitment;

  @ApiModelProperty(value = "心理")
  private String psychological;

  @ApiModelProperty(value = "建筑质量")
  private String[] buildingQuality;

  @ApiModelProperty(value = "建筑设计")
  private String buildingDesign;

  @ApiModelProperty(value = "别墅样式")
  private String villaStyle;

  @ApiModelProperty(value = "户型")
  private String houseType;
  @ApiModelProperty(value = "户型名称")
  private String houseTypeName;

  @ApiModelProperty(value = "有利因素")
  private String[] goodFactor;

  @ApiModelProperty(value = "厌恶因素")
  private String[] badFactor;

  @ApiModelProperty(value = "挡光")
  private String inTheLight;

  @ApiModelProperty(value = "特殊因素")
  private String[] special;

  @ApiModelProperty(value = "楼栋类型")
  private String buildingType;
  @ApiModelProperty(value = "楼栋类型名称")
  private String buildingTypeName;

  @ApiModelProperty(value = "楼栋id")
  private Long buildingId;
  @ApiModelProperty(value = "楼栋名称")
  private String buildingName;

  @ApiModelProperty(value = "房屋Id")
  private Long houseId;
  @ApiModelProperty(value = "房屋名称")
  private String houseName;

  @ApiModelProperty(value = "建筑类型")
  private String buildingForm;

  @ApiModelProperty(value = "容积率")
  private BigDecimal plotRatio;

  @ApiModelProperty(value = "绿化率")
  private BigDecimal greeningRate;

  @ApiModelProperty(value = "物业费")
  private BigDecimal fee;

  @ApiModelProperty(value = "产权人")
  private String propertyowner;
  @ApiModelProperty(value = "房产设计用途")
  private String designpurpose;

  @ApiModelProperty(value = "房产属性")
  private String attribute;

  @ApiModelProperty(value = "繁华程度")
  private String flourishingDegree;

  @ApiModelProperty(value = "交通路线")
  private String trafficRoutes;

  @ApiModelProperty(value = "配套设施")
  private String facilities;

  @ApiModelProperty(value = "重点校区")
  private String campus;

  @ApiModelProperty(value = "停车方便程度")
  private String parkingconvenience;

  @ApiModelProperty(value = "非住宅类型 写字楼=1，酒店式公寓=2，产权式商铺=3")
  private Integer nonresidentialType;

  @ApiModelProperty(value = "室内功能分区  合理 不合理")
  private String[] interiorFuncPartition;

  @ApiModelProperty(value = "通行便捷修正  便捷 遮挡")
  private String[] convenience;

  @ApiModelProperty(value = "临街面宽度")
  private Integer frontageWidth;

  @ApiModelProperty(value = "临街状况  一面临街  ；两面临街")
  private String frontageStatus;

  @ApiModelProperty(value = "占用层数")
  private String occupyFloor;


  @ApiModelProperty(value = "基准价月份")
  private String priceDate;

  @ApiModelProperty(value = "小区级别")
  private String grade;

  @ApiModelProperty(value = "批次号")
  private String batchNum;

  @ApiModelProperty(value = "批次总数")
  private String batchTotalCount;

  @ApiModelProperty(value = "地址标准化程度")
  private String batchLevel;


  @ApiModelProperty(value = "单元ID")
  private Long unitId;
  @ApiModelProperty(value = "单元名称")
  private String unitName;

  @ApiModelProperty(value = "户号")
  private String houseNumber;

  @ApiModelProperty(value = "建成年份")
  private Integer buildingYear;

  @ApiModelProperty(value = "备注")
  private String remark;

  @ApiModelProperty(value = "联系人")
  private String contacts;

  @ApiModelProperty(value = "联系人电话")
  private String contactsPhone;

  @ApiModelProperty(value = "资料清单,房地产资料评估清单（0）、土地评估资料清单（1）、在建工程评估资料清单（2）")
  private String infoListType;

  @ApiModelProperty(value = "房产证照片|用户委托函")
  private String pocImg;

  @ApiModelProperty(value = "房产证照片地址")
  private String pictUrl;

  @ApiModelProperty(value = "营业执照照片")
  private String businessLicenseImg;

  @ApiModelProperty(value = "营业执照照片地址")
  private String businessLicenseUrl;

  @ApiModelProperty(value = "身份证照片")
  private String idCardImg;

  @ApiModelProperty(value = "身份证照片地址")
  private String idCardUrl;

  @ApiModelProperty(value = "房屋所有权证照片")
  private String houseCardImg;

  @ApiModelProperty(value = "房屋所有权证照片地址")
  private String houseCardUrl;

  @ApiModelProperty(value = "契证或他项权证照片")
  private String otherCardImg;

  @ApiModelProperty(value = "契证或他项权证照片地址")
  private String otherCardUrl;

  @ApiModelProperty(value = "租赁合同照片")
  private String rentDealImg;

  @ApiModelProperty(value = "租赁合同照片地址")
  private String rentDealUrl;

  @ApiModelProperty(value = "权利承诺书照片")
  private String rightCommitImg;

  @ApiModelProperty(value = "权利承诺书照片地址")
  private String rightCommitUrl;

  @ApiModelProperty(value = "现场查勘记录表照片")
  private String siteRecordImg;

  @ApiModelProperty(value = "现场查勘记录表照片地址")
  private String siteRecordUrl;

  @ApiModelProperty(value = "国有建设用地出让合同照片")
  private String nationalLandSellImg;

  @ApiModelProperty(value = "国有建设用地出让合同照片地址")
  private String nationalLandSellUrl;

  @ApiModelProperty(value = "各项许可证照片")
  private String licenseCardImg;

  @ApiModelProperty(value = "各项许可证照片地址")
  private String licenseCardUrl;

  @ApiModelProperty(value = "报告类型,预评估（P）、正式报告（F）")
  private String reportType;

  @ApiModelProperty(value = "机构ID,直接调用API，传key，其他系统调用传机构ID")
  private String customerOrgId;


  @ApiModelProperty(value = "评估编码")
  private String evaluateCode;


  @ApiModelProperty(value = "回调URL")
  private String callbackUrl;


  @ApiModelProperty(value = "key")
  private String key;


  @ApiModelProperty(value = "客户经理名称")
  private String customerName;

  @ApiModelProperty(value = "客户经理照片")
  private String customerPhone;

  @ApiModelProperty(value = "人工智能评估，默认关闭")
  private Boolean openAiEvaluate = Boolean.FALSE;

  @ApiModelProperty(value = "分行")
  private String branchBank;
  @ApiModelProperty(value = "支行")
  private String subBranchBank;

  @ApiModelProperty("房屋所有人/权利人")
  private String houseOwner;
  @ApiModelProperty("房屋所有人/权证号")
  private String propertyNo;
  @ApiModelProperty("产证类型")
  private String documentType;
  @ApiModelProperty("委托估价方")
  private String principal;
  @ApiModelProperty("委托人身份证号码")
  private String certId;
  @ApiModelProperty("分摊土地面积")
  private String shareArea;
  @ApiModelProperty("土地使用证号")
  private String landUseNo;
  @ApiModelProperty("权力性质")
  private String houseNature;
  @ApiModelProperty("房产证照片URL")
  private String HouseFile;
  @ApiModelProperty("土地证照片URL")
  private String LandFile;
  @ApiModelProperty("不动产权证照片URL")
  private String RealEstateFile;
}
